使用 InfluxQL 探索数据
要开始使用 InfluxQL 探索数据,请执行以下操作
通过列出存储桶的 DBRP 映射,验证您的存储桶是否具有数据库和保留策略 (DBRP) 映射。如果不是,创建一个新的 DBRP 映射。
(可选)如果您想使用以下示例中使用的数据,请下载 NOAA 示例数据。
使用 InfluxQL
SELECT
语句和其他关键子句来探索您的数据。
SELECT 语句
使用 SELECT
语句从特定的measurement 或 measurements 中查询数据。
SELECT <field_key>[,<field_key>,<tag_key>] FROM <measurement_name>[,<measurement_name>]
WHERE 子句
SELECT_clause FROM_clause WHERE <conditional_expression> [(AND|OR) <conditional_expression> [...]]
GROUP BY 子句
使用 GROUP BY
子句按一个或多个指定的标签和/或指定的时间间隔对查询结果进行分组。
SELECT_clause FROM_clause [WHERE_clause] GROUP BY [* | <tag_key>[,<tag_key]]
ORDER BY 子句
使用 ORDER BY
子句以升序或降序对数据进行排序。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] ORDER BY time DESC
LIMIT 和 SLIMIT 子句
使用 LIMIT
和 SLIMIT
子句限制查询中返回的数据点和序列的数量。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] LIMIT <N>
OFFSET 和 SOFFSET 子句
使用 OFFSET
和 SOFFSET
子句对数据点和序列进行分页。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] LIMIT_clause OFFSET <N> [SLIMIT_clause]
时间和时区查询
探索专门用于处理时间的 InfluxQL 功能。使用 tz
(时区)子句返回指定时区的 UTC 偏移量。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] [LIMIT_clause] [OFFSET_clause] [SLIMIT_clause] [SOFFSET_clause] tz('<time_zone>')
子查询
使用 subquery
将查询作为封闭查询中的条件应用。
SELECT_clause FROM ( SELECT_statement ) [...]
正则表达式
使用 regular expressions
匹配数据中的模式。
SELECT /<regular_expression_field_key>/ FROM /<regular_expression_measurement>/ WHERE [<tag_key> <operator> /<regular_expression_tag_value>/ | <field_key> <operator> /<regular_expression_field_value>/] GROUP BY /<regular_expression_tag_key>/
下载示例数据
本文档中的示例 InfluxQL 查询使用公开可用的美国国家海洋和大气管理局 (NOAA) 数据。
要下载示例中使用的一部分 NOAA 数据,请运行NOAA 水文示例数据下的脚本(例如,将脚本复制并粘贴到您的数据浏览器 - 脚本编辑器中),并将脚本中的 “example-org” 替换为您 InfluxDB 组织的名称。
让我们熟悉一下 h2o_feet
measurement 中的数据子样本
输出
时间 | 水位描述 | 位置 | 水位 |
---|---|---|---|
2019-08-18T00:00:00Z | 在 6 到 9 英尺之间 | coyote_creek | 8.1200000000 |
2019-08-18T00:00:00Z | 低于 3 英尺 | santa_monica | 2.0640000000 |
2019-08-18T00:06:00Z | 在 6 到 9 英尺之间 | coyote_creek | 8.0050000000 |
2019-08-18T00:06:00Z | 低于 3 英尺 | santa_monica | 2.1160000000 |
2019-08-18T00:12:00Z | 在 6 到 9 英尺之间 | coyote_creek | 7.8870000000 |
2019-08-18T00:12:00Z | 低于 3 英尺 | santa_monica | 2.0280000000 |
h2o_feet
measurement 中的数据以六分钟的时间间隔出现。此 measurement 有一个标签键 (location
),它有两个标签值:coyote_creek
和 santa_monica
。该 measurement 还有两个字段:level description
存储字符串字段值,而 water_level
存储浮点字段值。
在 InfluxQL shell 中配置时间戳
默认情况下,InfluxQL shell 默认以纳秒 UNIX 纪元格式返回时间戳。要返回人类可读的 RFC3339 时间戳而不是 Unix 纳秒时间戳,请使用 precision 帮助命令 `` 来配置时间戳格式
precision rfc3339
InfluxDB API 默认以 RFC3339 格式返回时间戳。使用 epoch
查询字符串参数 指定其他格式。
此页内容是否对您有帮助?
感谢您的反馈!